home *** CD-ROM | disk | FTP | other *** search
/ Aminet 21 / Aminet 21 (1997)(GTI - Schatztruhe)[!][Oct 1997].iso / Aminet / mus / play / MPEGA.lha / mpega / MPEGA.doc < prev   
Encoding:
Text File  |  1997-08-17  |  12.1 KB  |  345 lines

  1. -------------------------------------------------------------------------------
  2.  
  3.                  MPEGA 3.2  (16-Aug-1997) (68020+) (GIFTWARE)
  4.  
  5. -------------------------------------------------------------------------------
  6.  
  7.  
  8. Distribution Conditions
  9. -----------------------
  10.  
  11.   This program is copyright (c) 1995-1997 by Stephane TAVENARD.
  12. It may be distributed freely under the condition that no profit is
  13. gained from its distribution, nor from any other program distributed
  14. in the same package.
  15.  
  16.   Permission is granted to distribute this package by Bulletin Board
  17. systems or network sites, under the condition that no fee is charged
  18. on downloading it.
  19.  
  20.   All files that are part of this package have to be distributed
  21. together and none of them may be changed in any way other than
  22. archiving or crunching.  The only exception to this rule are the
  23. icons, including the tooltypes, which may be changed to accommodate
  24. them to the rest of the disk it is distributed on.
  25.  
  26.   This program is distributed as freeware (and giftware).
  27.  
  28. Disclamer
  29. ---------
  30.  
  31.   This package is provided "as is" without warranty of any kind.
  32. The author assumes no responsibility or liability whatsoever
  33. for any damage or dataloss caused by using this package.
  34.  
  35.  
  36. Introduction
  37. ------------
  38.  
  39. What is MPEG audio ?
  40.  
  41. It's a very efficient audio compression standard. Actually, there is 3
  42. compression methods, named layer I, II & III. Layer III is more efficient
  43. than layer II, which is more efficient than layer I. But, more efficient
  44. means more complex.
  45. MPEG audio allows to compress a 16-bit PCM sound file from 1.2 to
  46. 32 times.
  47.  
  48. Why is it so hard to make a real time MPEG audio decoder ?
  49.  
  50. MPEG audio decoding requires a lot of arithmetic calculation, so a lot of CPU
  51. power is required. Normally, MPEG audio decoding is made with help of a DSP.
  52.  
  53.  
  54. History
  55. -------
  56.  
  57. V1.0    23-Jun-1995     First aminet release
  58. V1.1    09-Sep-1995     Added mixing audio output. For example, it can play at
  59.                         28000Hz a 11025Hz decoded stream (-d4 option).
  60. V1.2B   31-Jul-1996     68020..68040 and 68060 versions
  61.                         Buffer time can be set by user
  62.                         Can play half rate if private bit is set in mpeg stream
  63. V1.3    01-Nov-1996     Added MPEG2 low sampling frequencies
  64. V2.0    31-Mar-1997     Added Layer III !
  65. V2.1    02-Apr-1997     -x option now works (missing !)
  66. V2.2    05-Apr-1997     Corrected bug in MPEG I,II dequantization
  67.                         IMDCT now in pure asm
  68.                         Decoding Layer III is now 20% faster than V2.1
  69. V2.2B   06-Apr-1997     Added MPEG2.5 support
  70.                         Fixed bug in subband synthesis filter
  71. V2.3    11-Apr-1997     Optimized subband synthesis filter
  72.                         play audio as default (-s to silence)
  73.                         added priority option (-p)
  74. V2.4    19-Apr-1997     Optimized huffman decoding of Layer III
  75.                         Added AHI support (-I option)
  76.                         Use now async I/O for reading input file
  77.                         Improved multitasking capabilities
  78. V2.5    03-May-1997     Fixed bug for 48kHz & 24kHz streams
  79.                         Fixed bug in that swallows end of sound
  80.                         Added seek into stream (-S option)
  81.                         Use of AHI V4
  82.                         Fixed bug when stopping with Ctrl-C
  83.                         Re-enabled AIFF header (-A option)
  84.                         Added max decoding frequency (-F option)
  85. V2.6    16-May-1997     Added Time counter (-T option)
  86.                         Fixed small bug into IMDCT of layer III
  87.                         Fixed "Audio skipping" bug at start of play
  88. V2.7    18-May-1997     Optimized Subband synthesis (global gain = 20% on 060 !)
  89.                         Added synchronization tolerance (allows to read some incorrect bitstreams)
  90.                         No more crash if input stream is not MPEG Audio
  91. V2.8    24-May-1997     All output text info is now output to stdio instead of stderr
  92.                         Audio manager use now soft interrupts
  93. V2.9    29-May-1997     Added -w option to wait for audio buffer to be full before starting audio
  94.                         Added -b option to set the input file buffer size (default is 16KB)
  95.                         Gain of 6% for layer III decoding (on '060)
  96. V3.0    15-Jul-1997     FPU Version use now Optimized FPU routines (no more INTEGER calc.)
  97.                         -> FPU is slower than non FPU version, but provides more quality
  98.                         Suppressed MPEG Audio header check (some streams have pb with it)
  99.                         Corrected bad lock when opening stream (MUFS files didn't work)
  100.                         New Huffman filling buffer (Decoding layer III is 5% faster on a 060)
  101.                         -a option to display audio buffer fill level (in secs)
  102.                         Audio buffer size can be more than 32 secs now
  103.                         Added WAVE output option (-W)
  104.                         Added Decoding parameters output option (-D)
  105.                         Faster dequantization & stereo process in layer III
  106.                         Play list as input file with -l option
  107.                         Output file can be specified with -o <file> option
  108.                         Added a config file (default is MPEGA:MPEGA.CFG, then MPEGA.CFG):
  109.                            - separate mpeg decoder options for Layer I&II and III, mono and stereo files
  110.                            - default options
  111.                         Added -C option to display current configuration
  112.                         Now time used is only displayed if -u option is set
  113. V3.1    23-Jul-1997     Corrected WAVE Format (bug in size calc)
  114.                         Added -r option to disable Async I/O for input file (don't lock input file)
  115.                         Suppressed the need for an MPEGA: assign (sorry about this...)
  116.                         Read MPEGA.CFG now from ENV:, S:, PROGDIR:, and then current directory.
  117.                         Added -N option to display filename
  118. V3.2    16-Aug-1997     Version string format now STYLEGUIDE compliant
  119.                         Added Random play for playlist (-R option)
  120.                         Added TAG info display (-i option)
  121.  
  122. Description
  123. -----------
  124.  
  125. You need at least a 68020 CPU to use it !
  126.  
  127. This is an highly optimized MPEG audio decoder. This one can decode MPEG audio
  128. standard streams, layer I, II & III. The output can be either a raw PCM file
  129. or AMIGA-builtin audio device (14-bit/cybersound/AHI).
  130.  
  131. How to use it
  132. -------------
  133.  
  134. Syntax: MPEGA [<options>] <MPEG Audio file> [<out pcm file>]
  135.  
  136. options are:
  137.  
  138. -d <freq_div>   frequency division: 1, 2 or 4
  139. -q <quality>    output quality: 0 (worst), 1 or 2 (best)
  140. -h              display header only
  141. -n              no frame counter
  142. -m              mono output (left channel)
  143. -p <pri>        process priority (-30..30)
  144. -I[<id>]        AHI output, <id> = Audio mode ID in hex (ex: -I20004)
  145. -s              silence (no audio output)
  146. -f 0|1          audio filter off/on (default = auto)
  147. -x <freq>       audio mixing frequency (default = none)
  148. -t <ms>         audio buffer time in ms (default = 1 sec)
  149. -v <vol>        audio volume (0..64 or 65..256 for boost)
  150. -w              wait for audio buffer to be full before starting audio
  151. -a              audio buffer fill level in secs (use with -T option)
  152. -S <ms>         seek to time postion in stream (unit is ms)
  153. -A              write AIFF header to output file
  154. -W              write WAVE header to output file
  155. -F <freq_max>   max decoding frequency (auto freq_div)
  156. -T              display time counter instead of frame counter
  157. -b <k_size>     set the input file buffer size in KBytes (default = 16KB)
  158. -D              display decoding parameters
  159. -l              input file is a play list (text file)
  160. -o <out file>   output decoded file
  161. -c <cfg file>   configuration file (default = MPEGA.CFG)
  162. -C              display current configuration
  163. -u              display time used
  164. -r              don't use Async I/O for input file (no lock)
  165. -N              Display filename
  166. -R              random play
  167. -i              display TAG infos
  168.  
  169. Play list
  170. ~~~~~~~~~
  171.  
  172. A play list is a text file, each line containing a filename (and its path).
  173.  
  174. Example:
  175.  
  176. ----- BEGIN OF playlist.txt -----
  177. mpega:films/PFICTION.MP3
  178. mpega:films/Blade_Runner/Blade_Runner_Blues.mp2
  179. mpega:Angra/Carolina_IV.mp2
  180. ------ END OF playlist.txt ------
  181.  
  182. -> 'mpega -l playlist.txt' will play all the files in this play list
  183.  
  184.  
  185. Config File
  186. ~~~~~~~~~~~
  187.  
  188. The default config file is 'MPEGA.CFG' loaded each time you start mpega.
  189. It try to read MPEGA.CFG from ENV:, S:, PROGDIR:, and then current directory.
  190.  
  191. You can specify an alternate config file with -c option.
  192.  
  193. A config file is a set of line options. The first 4 lines are used to
  194. configure the mpeg decoder according to the mpeg audio file type.
  195.  
  196. line option #  mpeg audio file type
  197.      1         Layer I or II, Mono
  198.      2         Layer III, Mono
  199.      3         Layer I or II, Stereo
  200.      4         Layer III, Stereo
  201.  
  202. On this first lines, only options -d, -q, -F and -m are allowed
  203.  
  204. The next lines are used as default options, as they were entered
  205. on the command line.
  206. Comment lines are blank lines or lines begining with #
  207.  
  208. Example of config file:
  209.  
  210. ----- BEGIN OF MPEGA.CFG -----
  211. # Config file for MPEGA
  212. #
  213. # WARNING You must not change the config lines order !
  214. #         option line is limited to 255 characters
  215. #
  216. # MPEG decoder options (allowed options: -d -q -F -m)
  217. #
  218. # Mono files:
  219. # Layers I & II
  220. -d1 -q2
  221. # Layers III
  222. -d2 -q1
  223. #
  224. # Stereo files:
  225. # Layers I & II
  226. -d1 -q1 -m
  227. # Layers III
  228. -q0 -F22050 -m
  229. #
  230. # Default options (all options allowed, may overwrite previous options)
  231. -u -T
  232. ------ END OF MPEGA.CFG ------
  233.  
  234. TAG infos
  235. ~~~~~~~~~
  236.  
  237. TAG infos are often used now for mp3 files. When tag info is available and -i option
  238. is selected, an info line will appear with the following format:
  239. <title> (<artist>) [<album>] <year> - <genre> - <comment>
  240.  
  241. TAG info can be added/modified with the utility mp3Info by Thorvald Natvig.
  242. This utility can be found in aminet/mus/misc (Amiga version by mikecheng@cryogen.com)
  243.  
  244. Several version are available:
  245. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  246.  
  247. mpega.020       68020 or 68030 with or without FPU
  248. mpega.020FPU    68020 or 68030 + FPU
  249. mpega.040       68040 or 68060 with or without FPU
  250. mpega.040FPU    68040 or 68060 + FPU
  251.  
  252. *******************************************************************
  253. *****                                                         *****
  254. ***** USE NON FPU VERSION FOR MAXIMUM SPEED OR AUDIO PLAYBACK *****
  255. *****                                                         *****
  256. *******************************************************************
  257.  
  258. Examples:
  259.  
  260. playing sound without counter, priority of 10:
  261.  
  262.    mpega -p10 -n <mpeg file>
  263.  
  264. or with AHI:
  265.  
  266.    mode id requester:
  267.    mpega -p10 -n -I <mpeg file>
  268.  
  269.    mode id 20004:
  270.    mpega -p10 -n -I20004 <mpeg file>
  271.  
  272. playing on a pal screen (limit to 28Khz):
  273.  
  274.    mpega -x28000 <mpeg file>
  275.  
  276. creating an output pcm file without sound:
  277.  
  278.    mpega -s <mpeg file> <output pcm file>
  279.  
  280. creating an output AIFF file without sound:
  281.  
  282.    mpega -s -A <mpeg file> <output pcm file>
  283.  
  284.  
  285. Limit the decoding frequency to 22.05KHz
  286.  
  287.    mpega -F22050 <mpeg file>
  288.  
  289.  
  290. Speed
  291. -----
  292.  
  293. Today, MPEG layer III decoders are very rare on AMIGA
  294.  
  295. A little comparison with amp.0.7.2 on 68060/64 MHz:
  296.  
  297. Spot1-44S.96.mp3 (Stereo 44.1KHz 96kpbs layer III) of 10.9 sec
  298.  
  299. amp.040881   mpega:test/Spot1-44S.96.mp3 ram:out.pcm  -> 12.5 sec
  300. mpega.040    mpega:test/Spot1-44S.96.mp3 -s           ->  3.3 sec
  301.  
  302. Future
  303. ------
  304.  
  305. - Port of Layer III to 'SongPlayer' (aminet/mus/play)
  306.  
  307. - More speed !
  308.  
  309.  
  310. Copyrights
  311. ----------
  312.  
  313. AHI is Copyright ©1994-96 Martin Blom
  314.  
  315. Credits
  316. -------
  317.  
  318. Thanks to Thorvald Natvig <xeno@mix.hive.no> for his mp3info sources (read & write of TAG info)
  319. ID3 TAG format by NamkraD/DC (erick@marble.net)
  320.  
  321.  
  322. Thanks to my friend, AMIGA, the best computer ever made.
  323.  
  324.            / /
  325.           / /
  326.          / /
  327.    \ \  / /
  328.     \ \/ /
  329.      \/\/
  330.  
  331. Stéphane TAVENARD (ANGERS/France)
  332. Email: tavenard@xiii.univ-angers.fr (it's my brother Raphaël mail)
  333. IRC: Tatav
  334.  
  335. Send your gifts here :^)
  336.  
  337. Stéphane TAVENARD
  338. La Bezanière
  339. 49070 Saint Jean de Linières
  340. FRANCE
  341.  
  342. Nota from Raphaël: Because my E-mail account is very very short, please tell me before
  343.                    using an attachment :(
  344.  
  345.